package com.snbc.Io;

import java.io.File;
import java.io.FileOutputStream;

/**
 * @Classname FileOutputStreamDemo2
 * @Description TODO
 * @Date 2019/9/26 19:47
 * @Created by Acer
 */
public class FileOutputStreamDemo2 {
    /**
     * 练习-写入数据到文件
     * 以字节流的形式向文件写入数据 中的例子，当lol2.txt不存在的时候，是会自动创建lol2.txt文件的。
     * 但是，如果是写入数据到d:/xyz/lol2.txt，而目录xyz又不存在的话，就会抛出异常。
     * 那么怎么自动创建xyz目录？
     * 如果是多层目录 d:/xyz/abc/def/lol2.txt 呢？
     */
    public static void main(String[] args) {
        try {
            File file = new File("F:\\123444mmm\\1234.txt");
            // 如果父文件夹不存在，则创建
            // File.mkdirs(); 创建文件夹，如果父文件夹不存在，就会创建父文件夹
            if (!file.getParentFile().exists()) {
                file.getParentFile().mkdirs();
            }
            byte data[] = {'a', 65,'6',6};
            // 创建基于文件的输出流
            FileOutputStream fos = new FileOutputStream(file);
            fos.write(data);
            fos.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
